package com.xyy.saas.payment.pojo.vo;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author liujf
 */

@Data
public class PageVo<T> implements Serializable {
    private static final long serialVersionUID = 1L;

    private PageVo() {
    }

    private List<T> list;

    private Long total;

    private Long pages;

    /**
     * 封装通用分页响应
     *
     * @param list 分页数据（必须是数据库查询结果）
     * @return 分页数据
     */
    public static <T> PageVo<T> pack(List<T> list, Long pages, Long total) {
        PageVo<T> pageVo = new PageVo<>();
        pageVo.setPages(pages);
        pageVo.setList(list);
        pageVo.setTotal(total);
        return pageVo;
    }
}
